home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs07.d81 / slice.prg (.txt) < prev    next >
Commodore BASIC  |  2009-10-10  |  2KB  |  62 lines

  1. 10 POKE56,160:CLR:Z$=CHR$(.):PRINT"[147]"
  2. 11 PRINT"ENTER DISK DRIVE DEVICE NUMBER."
  3. 12 PRINT"(ENTER 0 TO EXIT.)"
  4. 13 PRINT"  8[145]":INPUTD:IFD=0THENEND
  5. 14 IFD-8AND252THENPRINT"ILLEGAL DEVICE NUMBER":GOTO11
  6. 15 POKE2,35:POKE184,8:POKE185,8:POKE186,D
  7. 16 POKE183,1:POKE187,2:POKE188,.:SYS65472
  8. 17 IFPEEK(783)AND1THENCLOSE8:PRINT"[147]?DEVICE";D;"NOT PRESENT":GOTO11
  9. 18 CLOSE8:OPEN15,D,15
  10. 19 PRINT"ENTER NAME OF FILE TO BE SPLIT."
  11. 20 PRINT:INPUTF1$
  12. 21 OPEN8,D,8,F1$:GOSUB200:CLOSE8:IFA>19THEN19
  13. 22 GOSUB500:T1=18:P1=P:S1=S
  14. 23 OPEN8,D,8,"#"
  15. 24 PRINT#15,"U1";8;0;T1;S1
  16. 25 PRINT#15,"B-P";8;P1+1
  17. 26 GET#8,T$:GET#8,S$
  18. 27 TT=ASC(T$+Z$):SS=ASC(S$+Z$)
  19. 28 PRINT#15,"B-P";8;P1+28
  20. 29 GET#8,A$:B=ASC(A$+Z$):GET#8,A$:B=B+256*ASC(A$+Z$)
  21. 30 PRINT"NUMBER OF BLOCKS IN FILE =";B
  22. 31 PRINT"ENTER NUMBER OF BLOCKS FOR FIRST PART."
  23. 32 PRINT:INPUTN:IFN=>BTHENPRINT"TOO MANY":GOTO30
  24. 33 IFN<1THENPRINT"TOO FEW":GOTO30
  25. 35 NN=N:PRINT#15,"B-P";8;P+28
  26. 36 H=(N/256):L=NAND255
  27. 37 PRINT#8,CHR$(L);CHR$(H);
  28. 38 PRINT#15,"U2";8;0;T1;S1:CLOSE8
  29. 39 PRINT"FIRST PART WILL HAVE SAME FILENAME."
  30. 40 PRINT"ENTER FILENAME FOR SECOND PART."
  31. 42 PRINT:INPUTF2$
  32. 45 OPEN8,D,8,F2$+",W":GOSUB200:CLOSE8:IFA>19THEN40
  33. 47 GOSUB300:T2=18:P2=P:S2=S
  34. 50 OPEN8,D,8,"#"
  35. 62 PRINT"[147]ONE MOMENT PLEASE..."
  36. 65 PRINT#15,"U1";8;0;TT;SS
  37. 67 GET#8,T$:GET#8,S$
  38. 70 T=ASC(T$+Z$):S=ASC(S$+Z$)
  39. 72 N=N-1:IFNTHENTT=T:SS=S:GOTO65
  40. 75 PRINT#15,"U1";8;0;TT;SS
  41. 77 PRINT#8,CHR$(.);CHR$(255);
  42. 80 PRINT#15,"U2";8;0;TT;SS
  43. 82 PRINT#15,"S0:";F2$
  44. 85 PRINT#15,"U1";8;0;T2;S2
  45. 87 PRINT#15,"B-P";8;P2
  46. 90 PRINT#8,CHR$(129);CHR$(T);CHR$(S);
  47. 92 PRINT#15,"B-P";8;P2+28
  48. 95 L=B-NN:H=INT(L/256):L=LAND255
  49. 96 PRINT#8,CHR$(L);CHR$(H);
  50. 97 PRINT#15,"U2";8;0;T2;S2
  51. 100 CLOSE8:CLOSE15:END
  52. 200 INPUT#15,A,B$,C,E
  53. 210 IFA>19THENPRINT:PRINTA:PRINTB$:PRINTC,E
  54. 220 RETURN
  55. 300 PRINT#15,"M-R";CHR$(145);CHR$(2);CHR$(2)
  56. 310 GET#15,A$:S=ASC(A$+Z$):GET#15,A$:P=ASC(A$+Z$)
  57. 320 RETURN
  58. 500 PRINT#15,"M-R";CHR$(144);CHR$(2);CHR$(5)
  59. 510 GET#15,A$:S=ASC(A$+Z$):GET#15,A$:GET#15,A$
  60. 520 GET#15,A$:GET#15,A$:P=ASC(A$+Z$)
  61. 530 RETURN
  62.